package com.njtoyo.taxi.admin.mapper.master.mapper.data;

import com.baomidou.dynamic.datasource.annotation.DS;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.njtoyo.taxi.admin.library.Const;
import com.njtoyo.taxi.admin.mapper.master.entity.Driver;
import com.njtoyo.taxi.admin.rest.presenter.data.data_analysis.DriverDataPresenter;
import com.njtoyo.taxi.admin.rest.wrapper.data.data_analysis.DriverDataWrapper;
import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Param;

import java.util.List;

@Mapper
@DS(Const.PRIMARY_DS)
public interface DriverDataMapper extends BaseMapper<Driver> {

    List<DriverDataPresenter> getIncome(@Param("driverIds") List<Long> driverIds, @Param("startDate") String startDate, @Param("endDate") String endDate);

    List<DriverDataPresenter> getCallNum(@Param("driverIds") List<Long> driverIds, @Param("startDate") String startDate, @Param("endDate") String endDate);

    List<DriverDataPresenter> getEndNum(@Param("driverIds") List<Long> driverIds, @Param("startDate") String startDate, @Param("endDate") String endDate);

    List<DriverDataPresenter> getDriverCancel(@Param("driverIds") List<Long> driverIds, @Param("startDate") String startDate, @Param("endDate") String endDate);

    List<DriverDataPresenter> getCustomerCancel(@Param("driverIds") List<Long> driverIds, @Param("startDate") String startDate, @Param("endDate") String endDate);

    List<DriverDataPresenter> getFiveMake(@Param("driverIds") List<Long> driverIds, @Param("startDate") String startDate, @Param("endDate") String endDate);

    List<DriverDataPresenter> getRecommend(@Param("driverIds") List<Long> driverIds, @Param("startDate") String startDate, @Param("endDate") String endDate);

    List<DriverDataPresenter> getConfirmCall(@Param("driverIds") List<Long> driverIds, @Param("startDate") String startDate, @Param("endDate") String endDate);
}
